package com.itaem.community.core.utils;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.itaem.community.core.entity.PageData;

import java.util.ArrayList;
import java.util.List;

/**
 * @author tomato
 */

public class PageUtils {

    public static <T> List<T> getPageData(Page<T> pageData) {
        return pageData.getRecords();
    }

    public static <T> PageData<T> extract(Page<T> page) {
        return new PageData<>(
                // 数据
                page.getRecords(),
                // 页码, PageRequest是以0为最小页码
                page.getCurrent(),
                // 当前页数据量
                page.getSize(),
                // 总数据量
                page.getPages(),
                // 总页数
                page.getTotal()
        );
    }

    public static PageData empty() {
        return new PageData<>(new ArrayList<>(), 0L, 0L, 0L, 0L);
    }
}
